package fr.miage.course7.app.controller;

import fr.miage.course7.app.model.CalculDistance;
import fr.miage.course7.app.model.Course;
import fr.miage.course7.app.view.Fenetre;

/**
 * Contrôleur de la vue.
 * @author Jean-Yannick TILIN
 * @author Alexandre JAHAN
 *
 */
public class Controller {

    /**
     * Fenêtre principale.
     */
    private Fenetre fenetre;

    /**
     * Modèle.
     */
    private Course course;
    
    /**
     * 
     */
    private CalculDistance classement;

    /**
     * Constructeur.
     * @param c Classe du modèle
     */
    public Controller(final Course c) {
        this.course = c;
        this.classement = course.getClassement();
        this.fenetre = new Fenetre(this);
    }

    /**
     * Méthode qui ouvre la fenêtre principale.
     */
    public final void displayView() {
        this.fenetre.displayView();
    }

    /**
     * Méthode qui ferme la fenêtre principale.
     */
    public final void closeView() {
        this.fenetre.closeView();
    }

    /**
     * Méthode qui récupère le modèle.
     * @return le modèle
     */
    public final Course getCourse() {
        return course;
    }

	public Fenetre getFenetre() {
		return fenetre;
	}
	
	public CalculDistance getClassement(){
		return classement;
	}
}
